Digital Satellite Broadcast Program Distribution Over Multicast IP Broadband Networks

ABSTRACT

Systems and methods for distributing digital satellite broadcast programs over multicast Internet Protocol (IP) networks are provided. A satellite receiver gateway receives a signal from a digital satellite broadcast and generates service information multicast packets that are transmitted over a multicast IP network. A device receives the service information multicast packets and generates a channel list or electronic program guide for a user. When a user selects a service from the channel list or electronic program guide the device sends a service request for the service towards the satellite receiver gateway. Either the satellite receiver gateway or a switch within the multicast IP network can then transmit the service in multicast IP packets to the requesting device.

BACKGROUND OF THE INVENTION

The manner of distributing video depends upon the type of system fromwhich the video originates. Digital cable systems typically distributevideo using standards-based techniques, such as the Data Over CableService Interface Specification (DOCSIS) standard. Digital videobroadcast (DVB) satellite systems operate in a different manner thanregular cable systems, and accordingly use different techniques fordistribution of video. One technique for Direct-to-Home (DTH) serviceoperators to distribute DVB satellite programs to multi-dwelling units(MDUs) in a building involves a satellite receiver that decodes anddecrypts the DVB satellite programs and retransmits the programs asmodulated channels on coaxial cable. Another technique for DTH operatorsto distribute DVB satellite programs is to downconvert the DVB satellitesignals and distribute them over coaxial cable to receivers thatdemodulate and demultiplex the signals in order to reproduce a program.These techniques require coaxial cable, line amplifiers, and switches,which increase the cost of the distribution system and the number ofpoints of failure. Further, the decryption of the first techniquedefeats the security systems applied to the programs, and thusjeopardizes the revenue stream due to free-riders that receive thesignals but do not pay for them.

SUMMARY OF THE INVENTION

There are currently standards that provide an alternative to the use ofcoaxial cable for DVB satellite programs. These standards allow thetransmission of the DVB satellite programs over Internet Protocol (IP)multicast networks using multicast packets. These standards areexcessively complex and computationally expensive, which increase theoverall cost of a DVB satellite distribution system. For example, inthese types of systems the client premise equipment has no advanceknowledge of the services available from the DVB satellite. Accordingly,when the client premise equipment is first powered on it must send arequest for the information about the available services to a satellitereceiver gateway, and then send a request for the service itself to thesatellite receiver gateway. Furthermore, the client premise equipmentmust receive an identification of the multicast address and port numberused for the requested service from the satellite receiver gateway.

Exemplary embodiments of the present invention provide systems andmethods for distributing digital satellite broadcast programs overmulticast Internet Protocol (IP) networks that overcome theabove-identified and other deficiencies of conventional techniques. Inaccordance with the present invention a satellite receiver gatewayreceives a signal from a digital satellite broadcast and generatesservice information multicast packets that are transmitted over amulticast IP network. A device receives the service informationmulticast packets and generates a channel list or electronic programguide for a user. When a user selects a service from the channel list orelectronic program guide the device sends a service request for theservice towards the satellite receiver gateway. Either the satellitereceiver gateway or a switch within the multicast IP network can thentransmit the service in multicast IP packets to the requesting device.

Other objects, advantages and novel features of the present inventionwill become apparent from the following detailed description of theinvention when considered in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWING FIGURES

FIG. 1 is a block diagram of an exemplary system in accordance with thepresent invention;

FIG. 2 is a schematic diagram of the distribution of DVB satelliteprograms over a multicast IP network in accordance with exemplaryembodiments of the present invention;

FIG. 3 is a flow diagram of an exemplary method for a satellite receivergateway in accordance with the present invention;

FIG. 4 is a block diagram of an exemplary satellite receiver gateway inaccordance with the present invention;

FIG. 5 is a flow diagram of an exemplary method for a switch inaccordance with the present invention;

FIG. 6 is a block diagram of an exemplary switch in accordance with thepresent invention;

FIG. 7 is a flow diagram of an exemplary method for client premiseequipment in accordance with the present invention; and

FIG. 8 is a block diagram of exemplary client premise equipment inaccordance with the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1 is a block diagram of an exemplary system in accordance with thepresent invention. A satellite 100 transmits microwave signals 101 thatinclude one or more Multiple Program Transport Streams (MPTS) signals,each of which is comprised of a number of packets that include a PacketIdentification (PID), a complex Program Allocation Table (PAT) and acomplex Program Mapping Table (PMT). These signals are received by asatellite antenna 102 using is low noise block downconverter 103, whichdownconverts the microwave frequency signals to radio frequency signalsin, for example, the L-band. The downconverted signals are provided tosatellite receiver gateway 105 over coaxial cable 104.

The satellite receiver gateway 105 process the satellite signals andgenerates multicast IP packets that include Service Program TransportStreams (SPTS) 106 for each individual program and multicast IP packetsthat include Service Information Multicast (SIM) information 107. TheSPTS and SIM multicast packets are transmitted from the satellitereceiver gateway 105 to client premise equipment 111 over a multicastdistribution system 108, which is an internet protocol (IP) local areanetwork. Multicast distribution system 108 includes switch 112, whichreceives the SPTS 106 for each individual program and the SIM 107, andforwards the SIM 107 to each client premise equipment 111 and particularSPTSs to the client premise equipment 111 that requested a servicecorresponding to the particular SPTS. The multicast distribution system108 can employ any type of IP local area network technology, includingwired Ethernet, wired optical technology (e.g., Gigabit Passive OpticalNetwork (GPON), Ethernet Passive Optical Network (EPON), BroadbandPassive Optical Network (BPON), technology), and any type of broadbandwireless technology (e.g., so-called 3G and 4G wireless technology).Accordingly, switch 112 will be an appropriate type of switch for theparticular type of local area network technology. Although FIG. 1illustrates that the multicast distribution system 108 includes a singleswitch 112, the multicast distribution system 108 can include more thanone such switch. Additionally, the multicast distribution system 108 andclient premise equipment 111 can be part of a building that includesmulti dwelling units (MDUs) or can be part of a larger system thatserves a number of buildings.

FIG. 2 is a schematic diagram of the distribution of DVB satelliteprograms over a multicast IP network in accordance with exemplaryembodiments of the present invention. As illustrated in FIG. 2,broadband distribution network carries multicast packets for the ServiceInformation Multicast (SIM), as well as a number of channels that aremulticast packets that carry SPTS services. Each channel includes aplurality of multicast packets that carry (1) video and a Program ClockReference (PCR), (2) audio, (3) Electronic Control Messages (ECM), (4) asimplified Program Allocation Table (PAT), and (5) a Program ManagementTable (PMT), each of which is identified by a particular packetidentification (PID) identifying the particular channel.

The Service Information Multicast (SIM) is comprised of a plurality ofmulticast packets that carry (1) a Conditional Access Table (CAT), (2)Service Description Table (SDT), (3) Event Information Table (EIT), (4)Time Date Table (TDT), (5) Time Offset Table (TOT), (6) software updatedata, and (7) any other relevant data, each of which is identified by aparticular PID. As will be described in more detail below, each channeland the SIM are assigned a predetermined multicast IP address and portfor communication over the multicast distribution system.

FIG. 3 is a flow diagram of an exemplary method for a satellite receivergateway in accordance with the present invention and FIG. 4 is a blockdiagram of an exemplary satellite receiver gateway in accordance withthe present invention. Initially, tuner 405 of satellite receivergateway 105 tunes to a desired DVB signal (step 305). If there aremultiple desired satellite signals, then each of these signals are tunedto and processed in the manner described below. The tuned signal isdemodulated by demodulator 410 and the transport streams aredemultiplexed by demultiplexer 415 (step 310). The demultiplexedtransport streams contain streams of packets that are differentiated bypacket identifications (PIDs), each PID corresponding to a differentchannel or program being carried on the DVB satellite signal.

The transport streams are then provided to processor 420, which can be amicroprocessor, application specific integrated circuit (ASIC), and/or afield programmable gate array (FPGA). When processor 420 is amicroprocessor the various logic illustrated in FIG. 4 can be computercode stored in a non-transitory memory (not illustrated) that is loadedinto the microprocessor.

Logic 440 of processor 420 extracts the Conditional Access Table (CAT),Service Description Table (SDT), complex Program Allocation Table (PAT),complex Program Management Table (PMT), Event Information Table (EIT),Time Date Table (TDT), Time Offset Table (TOT), software update data,and any other relevant data from one of the demultiplexed transportstreams (step 315). Logic 445 then generates and transmits the serviceinformation multicast (SIM) multicast packets to the multicastdistribution system 108 using local area network (LAN) transceiver 460(step 320). As discussed above, SIM multicast packets carry the CAT,SDT, EIT, TDT, TOT, software update data, as well as any other relevantdata. The SIM multicast packets are transmitted without being requestedby the client premise equipment, and accordingly can be considered asunsolicited multicast packets.

At approximately the same time, program allocation table (PAT) logic 435parses the complex PAT in the demultiplexed transport streams (step 325)and generates a simplified PAT for each requested service (step 330),and Program Map Table (PMT) parsing and generation logic 430 parses thecomplex PMT in the demultiplexed transport streams (step 335) andgenerates a simplified PMT for each requested service (step 340). Logic450 then allocates the video, audio, Program Clock Reference (PCR), andElectronic Control Messages (ECM) corresponding to each service, andgenerates and transmits a Single Program Transport Stream (SPTS) foreach service using LAN transceiver 460 (step 345). Again, as illustratedin FIG. 2, each SPTS corresponds to a channel or program that uses thesame PID, and carries carry video, a Program Clock Reference (PCR),audio, Electronic Control Messages (ECM), a simplified ProgramAllocation Table (PAT), and a Program Management Table (PMT).

Prior to transmission, multicast addressing logic 455 assigns an IPaddress and port number for the packets corresponding to a requestedservice using an algorithm that is known to both the satellite receivergateway 105 and the client premise equipment 111. This can be achievedby programming the client premise equipment during manufacture or byprogramming using a software update once the client premise equipment isdeployed. One exemplary algorithm for determining the multicast addressand port numbers is as follows:

IP: 235.1.0.0+(program ID) (using octal arithmetic)

Port: 1024+(program ID) (using decimal arithmetic)

Using this exemplary algorithm program #1 will be multicast on IP/Port235.1.0.1/1025 and program #500 (0x01f4) will be multicast on IP/Port235.1.1.244/1524. It should be recognized that this algorithm is merelyone exemplary algorithm and that other can be used without departingfrom the scope of this invention. Furthermore, it should be recognizedthat in the present invention the three digits of most significant octetof the IP address can be any value within the range allocated formulticast packets, which is 224-235.

FIG. 5 is a flow diagram of an exemplary method for a switch inaccordance with the present invention and FIG. 6 is a block diagram ofan exemplary switch in accordance with the present invention. Referringfirst to FIG. 6, switch 112 includes a plurality of ports 605 ₁-605 _(n)that are coupled to the satellite receiver gateway 105 and the pluralityof client premise equipment 111. For all conventional packets that donot relate to the DVB program distribution, LAN transceiver/switch willoperate in a conventional manner to properly route packets betweensatellite receiver gateway 105 and the plurality of client premiseequipment 111, and between client premise equipment 111, as appropriate.As will be described in more detail below, in one embodiment of thepresent invention the switch 112 operates in a so-called snooping modeto handle the DVB satellite programs so that all SPTSs are forwardedfrom the satellite receiver gateway 105 to the switch 112 and the switchforwards an SPTS for a requested program to the requesting clientpremise equipment 111. Although FIG. 6 illustrates a combined LANtransceiver and switch, these functions can be separated. Furthermore,the switch 112 can include separate LAN transceivers for each of theports.

Processor 615 of switch 112 can be a microprocessor, applicationspecific integrated circuit (ASIC), and/or a field programmable gatearray (FPGA). When processor 615 is a microprocessor the various logicillustrated in FIG. 6 can be computer code stored in a non-transitorymemory (not illustrated) that is loaded into the microprocessor.

Turning now to the operation of the switch 112 in connection with theoperation of the DVB program distribution, switch 112 receives SIMmulticast packets over one of the ports 605 and LAN transceiver/switch610, and then uses logic 620 to control transmission of the SIMmulticast packets to each of the client premise equipment 111 over theother ports (step 505). At the same time, switch 112 also receives aplurality of SPTSs corresponding to a plurality of programs over thesame port 605 or other ports as the SIM multicast packets are received(step 510). When switch 112 receives packets from client premiseequipment 111, logic 625 examines the packets to determine whether theyare for a service request (step 515). When a packet received from aclient premise equipment is not for a service request (“No” path out ofdecision step 515), the packets are routed in accordance withconventional procedures, and the switch 112 continues to receive andforward SIM multicast packets (step 505).

When logic 625 determines that a packet from a client premise equipmentis a request for a new service (“Yes” path out of decision step 515),logic 630 identifies the client premise equipment requesting the newservice (step 520). Logic 635 then identifies the multicast IP addressand port number corresponding to the requested service (step 525) andlogic 640 forwards packets that have the multicast IP address and portnumber for the requested service to the requesting client premiseequipment (step 530).

FIG. 7 is a flow diagram of an exemplary method for client premiseequipment in accordance with the present invention and FIG. 8 is a blockdiagram of exemplary client premise equipment in accordance with thepresent invention. When a client premise equipment (CPE) 111 is firstpowered on processor 810 receives packets from LAN transceiver 805 thatare carried on the multicast distribution system 108 and logic 815acquires the multicast packets of the SIM that are carried using apredetermined multicast address and port for this purpose (step 705).Logic 820 then parses the Service Description Table (SDT) to determinethe available services and create a channel list (step 710). Logic 825then generates a channel list or electronic program guide (EPG) uponrequest from a user (step 715), and then service request logic 830determines whether a user has requested a new service (step 720).

If a new service has not been requested (“No” path out of decision step720), then client premise equipment continues to acquire the multicastpackets associated with the SIM (step 705). If a new service has beenrequested (“Yes” path out of decision step 720), then logic 830 sends aservice request towards the satellite receiver gateway 105 via LANtransceiver 805 and multicast distribution system 108 (step 725).Because the switch uses a snooping technique, the request packet will beaddressed to the satellite receiver gateway, but intercepted andprocessed by the switch 112, which will handle the service request. Theservice request can be formatted, for example, as an Internet GroupManagement Protocol (IGMP) join request message and the snoopingtechnique can be an IGMP snooping technique. Using the predeterminedalgorithm, logic 835 identifies the multicast service address and portnumber for the requested service (step 730), and then logic 840 acquiresand decodes the packets associated with the requested service andoutputs video via audio/video output 850 (step 735).

Processor 810 of client premise equipment 111 can be a microprocessor,application specific integrated circuit (ASIC), and/or a fieldprogrammable gate array (FPGA). When processor 810 is a microprocessorthe various logic illustrated in FIG. 8 can be computer code stored in anon-transitory memory (not illustrated) that is loaded into themicroprocessor.

Although the embodiments described above employ a snooping technique bythe switch 112, the present invention can also be implemented where theswitch does not employ such a technique. In this case, the switch 112will receive request packets from client premise equipment 111 andforward these packets to the satellite receiver gateway 105 for handlingthe request and providing the requested service. In this embodiment,satellite receiver gateway 105 will only forward SPTSs to the multicastdistribution system 108 for programs that have been requested by aclient premise equipment 111. If satellite receiver gateway 105 receivesa request for a service from one client premise equipment that isalready being provided to another client premise equipment, thensatellite receiver gateway 105 can ignore the request except as may berequired by normal well-known multicast techniques to track clientpremise equipment for the purpose of determining when to terminateforwarding that particular service whenever the satellite receivergateway determines it is no longer in use by any client premiseequipment. However, if the multicast distribution system 108 employsmultiple switches and the one client and the another client are servedby different switches, then satellite receiver gateway 105 will forwardthe SPTS to the switches serving each of the clients.

Those skilled in the art will recognize that the block diagrams of thesatellite receiver gateway 105 in FIG. 4, switch 112 in FIG. 6, and theclient premises equipment 111 in FIG. 8 illustrate only some of thecomponents of these devices. In actual implementation, these devices caninclude other components, including memory (e.g., solid state, a harddrive, and/or the like), power supplies, user interface elements (e.g.,buttons), etc.

It should be recognized that although the discussion above focuses onthe distribution of video and audio signals that are part of transportstreams transmitted by a DVB satellite, the present invention can alsobe used for distribution of other types of signals, including audio-onlysignals, data signals (e.g., related to web browsing, e-mail, etc.), IPtelephony signals, and the like. Accordingly, in the discussion abovethe reference to a channel or program should be understood as equallyapplicable to other types of services that are carried in separatetransport streams. Furthermore, in the discussion above the termschannel and program are used interchangeably and should be understood inthe context of the present invention as representing the same concept.Moreover, the present invention is not limited to a particular type ofDVB satellite transmission technique, and can include DVB-S, DVB-S2, andthe forthcoming DVB-S3. Indeed, the present invention is not limited toDVB satellite transmission techniques. Rather, the present invention canbe employed with any type of transmission technique of digital satellitebroadcast programs.

Although exemplary embodiments have been described in connection withclient premise equipment, the present invention can be used with anytype of device, including fixed and/or mobile devices.

The foregoing disclosure has been set forth merely to illustrate theinvention and is not intended to be limiting. Since modifications of thedisclosed embodiments incorporating the spirit and substance of theinvention may occur to persons skilled in the art, the invention shouldbe construed to include everything within the scope of the appendedclaims and equivalents thereof.

What is claimed is:
 1. A method of receiving digital satellite broadcast programs in a client premises device, said method comprising: receiving, by the device, a plurality of multicast packets over a broadband distribution network, wherein the plurality of multicast packets comprise one or more groupings of packets, each grouping associated with a single program transport stream (SPTS), each SPTS corresponding to a service, and a plurality of unsolicited service information multicast (SIM) packets; generating, by the device, either a channel list or an electronic program guide based on information in the unsolicited SIM packets; transmitting, by the device, a request for a service listed in either the channel list or the electronic program guide; determining, by the device, a multicast IP address using information contained in the unsolicited SIM packets; and receiving, by the device, the requested service.
 2. The method of claim 1, wherein the plurality of unsolicited SIM packets include a conditional access table, a service description table, an event information table, a time date table, a time offset table, and software update data.
 3. The method of claim 1, further comprising acquiring, by the device, said plurality of unsolicited SIM packets from the plurality of multicast packets.
 4. The method of claim 3, further comprising parsing, by the device, a service description table (SDT) within the plurality of unsolicited SIM packets.
 5. The method of claim 4, wherein the generating of the electronic program guide is based on the parsed SDT.
 6. The method of claim 1, wherein the groupings of packets associated with the single program transport streams (SPTS) are distinct from the plurality of unsolicited SIM packets.
 7. The method of claim 1, wherein the plurality of multicast packets are transmitted by a satellite receiver gateway.
 8. The method of claim 7, wherein the determining of the multicast IP address is performed using a predetermined algorithm known to both the satellite receiver gateway and the client premises device.
 9. A system to receive digital satellite broadcast programs in a client premises device, comprising a transceiver and a processor: wherein the transceiver receives a plurality of multicast packets over a broadband distribution network, wherein the plurality of multicast packets comprises one or more groupings of packets, each grouping associated with a single program transport stream (SPTS), each SPTS corresponding to a service, and a plurality of unsolicited service information multicast (SIM) packets; and wherein the processor generates either a channel list or an electronic program guide based on information in the unsolicited SIM packets, transmits a request for a service listed in either the channel list or the electronic program guide, determines a multicast IP address using information contained in the unsolicited SIM packets, and receives the requested service.
 10. The system of claim 9, wherein the plurality of unsolicited SIM packets include a conditional access table, a service description table, an event information table, a time date table, a time offset table, and software update data.
 11. The system of claim 9, wherein the processor acquires the plurality of unsolicited SIM packets from the transceiver prior to the generation of the said electronic program guide.
 12. The system of claim 11, further wherein the processor parses a service description table (SDT) within the plurality of unsolicited SIM packets.
 13. The system of claim 9, wherein the processor performs said generation of the electronic program guide using electronic program guide logic.
 14. The system of claim 12, wherein the processor performs said parsing using service description table (SDT) parsing logic.
 15. The system of claim 9, wherein the processor performs said transmitting of the request using service request logic.
 16. The system of claim 9, wherein the receipt of the requested service comprises identifying, by the processor, packets on the network that include the determined multicast IP address; and wherein the processor performs said identifying using the multicast service address identification logic.
 17. The system of claim 9, wherein the groupings of packets associated with the single program transport streams are distinct from the unsolicited SIM packets.
 18. The system of claim 9, wherein the plurality of multicast packets are transmitted by a satellite receiver gateway.
 19. The system of claim 18, wherein the determining of the multicast IP address is performed using a predetermined algorithm known to both the satellite receiver gateway and the client premises device.
 20. The system of claim 14, wherein said generation of the electronic program guide is based on the parsed SDT. 